// Head datapump; take the head of an array.
// Copyright 2006 (C) Ralph Thomas

#ifndef MISSION_DATAPUMPS_HEAD_H
#define MISSION_DATAPUMPS_HEAD_H

#include <adobe/array.hpp>
#include <adobe/adam.hpp>

namespace datapumps {
	//
	/// The head datapump will take the head of the given array and pass that
	/// along.
	///
	/// \param	array	array containing: [the array to take the head of, the number of items in the head].
	/// \param	sheet	the sheet to resolve @references into.
	/// \return	a datapump that will return the head of the given array.
	//
	adobe::value_t make_head_datapump(const adobe::array_t& array, adobe::sheet_t& sheet);
}

#endif

